DSP/BIOS Link or DSPLINK is an IPC (interprocessor communications) scheme for passing messages and data in multiprocessor systems. In the case of the DaVinci DSP family from Texas Instruments, this scheme would allow passing of messages and data between an ARM client and a DSP server. DSPLINK can be used to implement a layer of software abstraction called a RPC that allows a remote function on the DSP to appear as local function calls in the ARM application code. The Codec Engine IPC communication layer is implemented using a RPC call scheme built on top of DSP/BIOS LINK.
DSP/BIOS LINK is implemented using shared memory and internal interrupts from the ARM to the DSP and vice versa.
The shared memory protocol for IPC is implemented as follows:
The DSP included in many DaVinci-based devices generally runs TI's DSP/BIOS RTOS. When multiple, heterogeneous cores are included in the device (e.g. DM644x), DSP/BIOS Link drivers run on both the ARM processor and the DSP to provide communication between the two.
A number of ARM9 operating systems support DSP/BIOS Link drivers: